<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            padding: 0;
            margin: 0;
        }

        li {
            list-style: none;
            line-height: 40px;
        }

        .title {
            line-height: 40px;
        }

        .list li {
            border: 1px dashed #333;
            text-indent: 10px;
            height: 40px;
        }
    </style>
</head>

<body>
    <h3 id="title">模拟封装jquery</h3>
    <input class="inp" type="text">
    <div class="list">
        <li>li_01</li>
        <li>li_02</li>
        <li>li_03</li>
        <li>li_04</li>
        <li>li_05</li>
        <li>li_06</li>
        <li>li_07</li>
        <li>li_08</li>
        <li>li_09</li>
        <li>li_10</li>
    </div>
</body>
<script>
    // jquery  原生js封装的一个库,快速获取元素,操作元素  (dom的增删改查,事件,ajax,运动)


    function GetEle(selector) {
        var obj = {
            eles: document.querySelectorAll(selector),
            // setHtml: function (con) {
            //     for (var i = 0; i < this.eles.length; i++) {
            //         var ele = this.eles[i];
            //         ele.textContent = con;
            //     }
            // },
            // getHtml: function () {
            //     // 默认返回集合中的第一个(为了模拟jquery)
            //     return this.eles[0].textContent;
            // },
            // 获取和设置匹配元素的html结构
            // html(123313)  有参数,就设置
            // html()        没有参数,就获取
            html: function (con) {
                if (arguments.length >= 1) {  // 有参数
                    for (var i = 0; i < this.eles.length; i++) {
                        var ele = this.eles[i];
                        ele.innerHTML = con;
                    }
                } else { //没有参数
                    // 默认返回集合中的第一个(模拟jquery)
                    return this.eles[0].innerHTML;
                }
            },
            text: function (con) {
                if (arguments.length >= 1) {  // 有参数
                    for (var i = 0; i < this.eles.length; i++) {
                        var ele = this.eles[i];
                        ele.textContent = con;
                    }
                } else { //没有参数
                    // 默认返回集合中的第一个(模拟jquery)
                    return this.eles[0].textContent;
                }
            },
            val: function (con) {
                if (arguments.length >= 1) {  // 有参数
                    for (var i = 0; i < this.eles.length; i++) {
                        var ele = this.eles[i];
                        ele.value = con;
                    }
                } else { //没有参数
                    // 默认返回集合中的第一个(模拟jquery)
                    return this.eles[0].value;
                }
            }
        }
        return obj;
    }

    var $li = GetEle(".list li");
    console.log($li);
    $li.html("hello");




</script>

</html>